g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
↳ QTRS
↳ DependencyPairsProof
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
G2(h, s1(s1(x))) -> G2(h, x)
G2(d, s1(x)) -> G2(d, x)
ID1(x) -> F2(x, s1(0))
F2(s1(x), y) -> DOUBLE1(y)
F2(s1(x), y) -> F2(half1(s1(x)), double1(y))
HALF1(x) -> G2(h, x)
F2(s1(x), y) -> HALF1(s1(x))
DOUBLE1(x) -> G2(d, x)
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
G2(h, s1(s1(x))) -> G2(h, x)
G2(d, s1(x)) -> G2(d, x)
ID1(x) -> F2(x, s1(0))
F2(s1(x), y) -> DOUBLE1(y)
F2(s1(x), y) -> F2(half1(s1(x)), double1(y))
HALF1(x) -> G2(h, x)
F2(s1(x), y) -> HALF1(s1(x))
DOUBLE1(x) -> G2(d, x)
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
G2(h, s1(s1(x))) -> G2(h, x)
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
G2(h, s1(s1(x))) -> G2(h, x)
POL( G2(x1, x2) ) = max{0, x2 - 1}
POL( s1(x1) ) = x1 + 1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
G2(d, s1(x)) -> G2(d, x)
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
G2(d, s1(x)) -> G2(d, x)
POL( G2(x1, x2) ) = x2
POL( s1(x1) ) = x1 + 1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
F2(s1(x), y) -> F2(half1(s1(x)), double1(y))
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F2(s1(x), y) -> F2(half1(s1(x)), double1(y))
POL( F2(x1, x2) ) = x1
POL( s1(x1) ) = x1 + 1
POL( half1(x1) ) = max{0, x1 - 1}
POL( g2(x1, x2) ) = max{0, x2 - 1}
POL( 0 ) = 0
g2(x, 0) -> 0
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
half1(x) -> g2(h, x)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
g2(x, 0) -> 0
g2(d, s1(x)) -> s1(s1(g2(d, x)))
g2(h, s1(0)) -> 0
g2(h, s1(s1(x))) -> s1(g2(h, x))
double1(x) -> g2(d, x)
half1(x) -> g2(h, x)
f2(s1(x), y) -> f2(half1(s1(x)), double1(y))
f2(s1(0), y) -> y
id1(x) -> f2(x, s1(0))